[C - Socket] UDP SERVER
Publicado por Enzo de Brito Ferber 10/03/2006
[ Hits: 10.588 ]
Homepage: http://www.maximasonorizacao.com.br
Este script testei na minha
propria máquina em terminas
diferentes, mas creio eu que
funcionará em uma rede local.
Como fazer funcionar:
Compile o script:
cc -o server server.c
Abra um terminal (xterm)
Execute o servidor.
Abra outro terminal (xterm)
Execute o cliente
P.S.: O cliente está em outro
link
#include <stdio.h> #include <stdlib.h> #include <netdb.h> #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #define PORT 3456 #define MAX_CONNECTS_TRY 10 int main(int argc, char *argv[]){ int fd1, fd2; int num_b; int bind_return; int listen_return; int sin_size; //para passar endereco para funcao accept() int msg_size; char msg[100]; char hostname[30]; struct sockaddr_in client; struct sockaddr_in host; gethostname(hostname, 30); printf("Seu HOSTNAME: %s\n\n", hostname); fd1 = socket(AF_INET, SOCK_DGRAM, 0); if(fd1 == -1){ perror("socket"); exit(1); } client.sin_family = AF_INET; client.sin_port = htons(PORT); client.sin_addr.s_addr = INADDR_ANY; //poe o endeco do meu computador automaticamente bind_return = bind(fd1, (struct sockaddr *)&client, sizeof(struct sockaddr)); if(bind_return == -1){ perror("bind"); exit(1); } while(strcmp("exit", msg) != 0){ memset(msg, 0x0, 100); sin_size = sizeof(host); msg_size = recvfrom(fd1, msg, 100, 0, (struct sockaddr *)&host, &sin_size); printf("Mensagem de:%s: %s\n", inet_ntoa(host.sin_addr), msg); } }
Exemplo de sockets: um client e um server bem simples
Nenhum coment�rio foi encontrado.
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Converter os repositórios Debian para o novo formato com as chaves
Instalando Spotify no Debian 13
Realizar overclock no Miyoo Mini (plus ou normal)
Direcionar uma URL para Outra No Mikrotik (1)
Monitoramento pfsense com zabbix (4)
Erro na inicialização do Debian como resolver (5)
Dúvidas sobre a originalidade de conteúdos online (11)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (4)